/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package entity;

/**
 *
 * @author Developer
 */
public class ExampleObject {

    private String titulo, descricao;

    public ExampleObject(String titulo, String descricao) {
        this.titulo = titulo;
        this.descricao = descricao;
    }

    public byte[] getBytes() {
        byte[] first = titulo.getBytes();
        byte[] second = descricao.getBytes();
        byte[] returnable = new byte[first.length + second.length];
        for (int i = 0; i < returnable.length; i++) {
            if (i < first.length) 
                returnable[i] = first[i];
             else 
                returnable[i] = second[i - first.length];           
        }
        return returnable;
    }

    public String getDescricao() {
        return descricao;
    }

    public String getTitulo() {
        return titulo;
    }
    
    public String getDescriptor(){
        return titulo.length()+"-"+descricao.length();
    }
    
    public int size(){
        return titulo.length()+descricao.length();
    }
    
    public static ExampleObject getObject(String descriptor, byte[] buffer) {
        //exemplo de descriptor: "140-4"
        int separatorOffset = descriptor.indexOf('-');
        int tituloSize = Integer.parseInt(descriptor.substring(0, separatorOffset));
        int descricaoSize = Integer.parseInt(descriptor.substring(separatorOffset+1));  
        return new ExampleObject(new String(buffer, 0, tituloSize), new String(buffer, tituloSize, descricaoSize));        
    }   
    public String toString(){
        return "Título: "+titulo+" Descrição: "+descricao;
    }
}
